Een procedure Function schrijven

   

Een procedure Function is een serie Visual Basic-instructies die zich tussen de instructies Function en End Function bevinden. Een procedure Function lijkt op een procedure Sub, met het verschil dat een functie ook een waarde als resultaat kan geven. Een procedure Function kan argumenten als constanten, variabelen en expressies bevatten die door een oproepende procedure zijn geleverd. Als een procedure Function geen argumenten bevat, moeten in de instructie Function twee haakjes zonder inhoud staan. Een functie geeft een waarde als resultaat als in een of meerdere instructies van de procedure een waarde aan de naam wordt toegewezen.

In het volgende voorbeeld berekent de functie Celsius het aantal graden Celsius uit het aantal graden Fahrenheit. Als de functie vanuit de procedure Main wordt opgeroepen, wordt een variabele met de waarde van het argument aan de functie toegewezen. De uitkomst van de berekening wordt naar de oproepende procedure teruggestuurd en in een berichtvenster weergegeven.

Sub Main()
    temp = Application.InputBox(Prompt:= _
        "Voer de temperatuur in graden F. in", Type:=1)
    MsgBox "Het is " & Celsius(temp) & " graden C."
End Sub

Function Celsius(fDegrees)
    Celsius = (fDegrees - 32) * 5 / 9
End Function